Transparent fault tolerance for scalable functional computation

نویسندگان

  • Robert J. Stewart
  • Patrick Maier
  • Philip W. Trinder
چکیده

Reliability is set to become a major concern on emergent large-scale architectures. While there are many parallel languages, and indeed many parallel functional languages, very few address reliability. The notable exception is the widely emulated Erlang distributed actor model that provides explicit supervision and recovery of actors with isolated state. We investigate scalable transparent fault tolerant functional computation with automatic supervision and recovery of tasks. We do so by developing HdpH-RS, a variant of the Haskell distributed parallel Haskell (HdpH) DSL with Reliable Scheduling. Extending the distributed work stealing protocol of HdpH for task supervision and recovery is challenging. To eliminate elusive concurrency bugs, we validate the HdpH-RS work stealing protocol using the SPIN model checker. HdpH-RS differs from the actor model in that its principal entities are tasks, i.e. independent stateless computations, rather than isolated stateful actors. Thanks to statelessness, fault recovery can be performed automatically and entirely hidden in the HdpH-RS runtime system. Statelessness is also key for proving a crucial property of the semantics of HdpH-RS: fault recovery does not change the result of the program, akin to deterministic parallelism. HdpH-RS provides a simple distributed fork/join-style programming model, with minimal exposure of fault tolerance at the language level, and a library of higher level abstractions such as algorithmic skeletons. In fact, the HdpH-RS DSL is exactly the same as the HdpH DSL, hence users can opt in or out of fault tolerant execution without any refactoring. Computations in HdpH-RS are always as reliable as the root node, no matter how many nodes and cores are actually used. We benchmark HdpH-RS on conventional clusters and an HPC platform: all benchmarks survive Chaos Monkey random fault injection; the system scales well e.g. up to 1400 cores on the HPC; reliability and recovery overheads are consistently low even at scale.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Algorithm-based Fault Tolerance for Floating-point Operations in Massively Parallel Systems

This paper considers the applicability of algorithm-based fault tolerance (ABFT) to massively parallel scientiic computation. Existing ABFT schemes can provide eeective fault tolerance at a low cost for computation on matrices of moderate size; however, the methods do not scale well to oating-point operations on large systems. This paper proposes the use of a partitioned linear encoding scheme ...

متن کامل

Fehlertolerante Overlay-Netze mit programmierbaren Netzknoten

for the yearbook This thesis describes adaptive multi-dimensional fault tolerance as a network service in Programmable Networks. We outline the concept of a component based programmable node architecture. Based on this performant and fault tolerant plattform we introduce scalable fault tolerance as a transparent network service. The foundation of the service are cooperating transparent overlay ...

متن کامل

Middleware for Embedded Adaptive Dependability

The Middleware for Embedded Adaptive Dependability (MEAD) infrastructure enhances large-scale distributed real-time embedded middleware applications with novel capabilities, including (i) transparent, yet tunable, fault tolerance in real time, (ii) proactive dependability, (iii) resource-aware system adaptation to crash, communication, partitioning and timing faults with (iv) scalable and fast ...

متن کامل

Large-Scale Computation Not at the Cost of Expressiveness

We present Celias, a new concurrent programming model for data-intensive scalable computing. Celias supports many virtues commonly found in existing distributed programming frameworks, such as elastic scaling and fault tolerance, without sacrificing expressiveness. The key design idea of Celias is the concept of a microtask, as a scalable, fault-tolerant, and completely data-driven unit of comp...

متن کامل

Process Migration for Resilient Applications

The notion of resiliency is concerned with constructing mission-critical distributed applications that are able to operate through a wide variety of failures, errors, and malicious attacks. A number of approaches have been proposed in the literature based on fault tolerance achieved through replication of resources. In general, these approaches provide graceful degradation of performance to the...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • J. Funct. Program.

دوره 26  شماره 

صفحات  -

تاریخ انتشار 2016